package com.one.oa.api.service;

import com.one.oa.api.bo.UserBo;
import com.one.oa.api.bo.UserFindBo;
import com.one.oa.api.bo.UserNameBo;
import com.one.oa.api.bo.UserPhoneBo;
import com.one.oa.vo.R;

/**
 *.           ,%%%%%%%%,
 *.         ,%%/\%%%%/\%%
 *.        ,%%%\c "" J/%%%
 * %.       %%%%/ o  o \%%%
 * `%%.     %%%%    _  |%%%
 *  `%%      `%%%%(__Y__)%%'
 *  //        ;%%%%`\-/%%%'
 * ((        /  `%%%%%%%'
 *  \\    .'          |
 *   \\  /       \  | |
 *    \\/         ) | |
 *     \         /_ | |__
 *     (___________)))))))
攻城狮 永无bug!
 * @ClassName UserService
 * @Author lemon
 * @create 2023/3/25 8:50
 */
public interface UserService {
    /**
     * 注册*/
    R register(UserBo bo);
    /**
     * 校验手机号是否存在*/
    R checkPhone(String phone);
    /**校验用户名是否存在*/
    R checkName(String name);

    /**
     * 查询全部用户*/
    R all();
    /**
     * 账号(昵称或手机号)密码登录*/
    R loginName(UserNameBo bo);
    /**
     * 手机号验证码登录*/
    R loginCode(UserPhoneBo bo);

    /**
     * 注销账号-退出*/
    R loginOut(String token);
    /**
     * 密码找回*/
    R findPass(UserFindBo bo);
    /**
     * 密码修改*/
    R updatePass(String token,String password);

    R checkToken(String token);
}
